package com.nageoffer.shortlink.project.dao.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.nageoffer.shortlink.project.common.database.BaseDo;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;
import java.util.Date;

@Data
@TableName("tb_link")
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class ShortLinkDO extends BaseDo {
    /**
     * ID
     */
    private Long id;

    /** 域名 */
    private String domain;

    /** 短链接 */
    private String shortUri;

    /** 完整短链接 */
    private String fullShortUri;

    /** 原始链接 */
    private String originUrl;

    /** 点击量 */
    private Integer clickNum;

    /** 分组标识 */
    private String gid;

    /**
     * 网页标识
     */
    private String favicon;

    /**
     * 历史PV
     */
    private Integer totalPv;

    /**
     * 历史UV
     */
    private Integer totalUv;

    /**
     * 历史UIP
     */
    private Integer totalUip;

    @TableField(exist = false)
    private Integer todayPv;

    @TableField(exist = false)
    private Integer todayUv;

    @TableField(exist = false)
    private Integer todayUip;

    /**
     * 删除时间
     */
    private Long delTime;

    /** 启用标识 */
    private Integer enableStates;

    /** 创建类型 */
    private Integer createType;

    /** 有效期类型 */
    private Integer validDateType;

    /** 有效期 */
    private Date validDate;

    /** 描述 */
    @TableField("`describe`")
    private String describe;
}
